package com.gxa.service;

import com.gxa.common.R;
import com.gxa.entity.DistrictSysUser;

public interface DistrictUserService {
    /**
     * 分页查询对应区级的所有账号信息
     * @param currentPage
     * @param pageSize
     * @param area
     * @return
     */
    R queryAllDistrictUsersByPage(int currentPage,int pageSize,String area);

    /**
     * 根据条件查询账号信息分页显示
     * @param userName
     * @param phone
     * @param organization
     * @param nickname
     * @param role
     * @param status
     * @return
     */
    R queryConditionalDistrictUser(String userName,String phone,String organization,String nickname,String role,String status,int currentPage,int pageSize,String area);

    /**
     * 添加账号信息
     * @param districtSysUser
     * @return
     */
    R addDistrictUser(DistrictSysUser districtSysUser);

    /**
     * 根据账号编号删除账号信息
     * @param id
     * @return
     */
    R deleteDistrictUserById(int id);

    /**
     * 启用账号
     * @param id
     * @return
     */
    R enableDistrictUser(int id);

    /**
     * 禁用账号
     * @param id
     * @return
     */
    R disableDistrictUser(int id);

    /**
     * 重置密码
     * @param id
     * @return
     */
    R resetPassword(int id);

    /**
     * 根据账号ID查询账号信息
     * @param id
     * @return
     */
    R queryDistrictUserById(int id);

    /**
     * 修改账号信息
     * @param districtSysUser
     * @return
     */
    R updateDistrictUser(DistrictSysUser districtSysUser);

    /**
     * 修改密码
     * @param id
     * @param newPassword
     * @return
     */
    R changePassword(int id,String newPassword);

    /**
     * 根据账号名称查询账号信息
     * @param userName
     * @return
     */
    R queryDistrictUserByUserName(String userName);
}
